/*
 * Created on 16/12/2008
 *
 */
package igrupobbva.pe.sistemareniec.actions;

import java.rmi.RemoteException;

import javax.xml.rpc.Service;
import javax.xml.rpc.ServiceException;

import com.grupobbva.iici.util.ConstantesUtil;
import com.ibm.www.operations.BBVA_RENIEC_INTERFACE_ServiceLocator;
import com.ibm.www.operations.BBVA_RENIEC_WSDLPortType;
import com.ibm.www.operations.Cabecera;
import com.ibm.www.operations.RENIEC_2_REPLY_Type;
import com.ibm.www.operations.RENIEC_2_REQUEST_Type;
import com.ibm.www.operations.SubTramaConsulta2;
import com.ibm.www.operations.SubTramaRespuestaDatos2;
import com.ibm.www.operations.SubTramaRespuestaImagenes2;

/**
 * @author p020912
 *
 */
public class Main {

	private final static String STATIC_BBVA_RENIEC_WSDLPortType_REF_NAME = "service/BBVA_RENIEC_WSDLSOAP_HTTP_Service";

	private final static Class STATIC_BBVA_RENIEC_WSDLPortType_CLASS = BBVA_RENIEC_WSDLPortType.class;

	public static void main(String[] args) {
		SubTramaConsulta2 subTramaConsulta = new SubTramaConsulta2();
		SubTramaRespuestaDatos2 subTramaRespuesta = new SubTramaRespuestaDatos2();
		SubTramaRespuestaImagenes2 subTramaRespuestaImagenes = new SubTramaRespuestaImagenes2();
		Cabecera cabecera = new Cabecera();
		cabecera.setVersion("0001");
		cabecera.setLongCabecera((Integer.parseInt("0128")));
		cabecera.setTipoServicio("000");
		cabecera.setLongTotalTrama((Integer.parseInt("000000143")));
		cabecera.setFragmentacion("                      ");
		cabecera.setTTL((Integer.parseInt("000000000")));
		cabecera.setTipoConsulta("2");
		cabecera.setCaracVerificacion("RENIECPERURENIEC");
		cabecera.setCodInstSolicitante("LDD019    ");
		cabecera.setCodServReniec("RENIEC001 ");
		cabecera.setAgenciaInstSolic("Agencia1  ");
		cabecera.setUsuarioFinalInstSol("Usuario1  ");
		cabecera.setHostFinalInstSol("Pc1       ");
		cabecera.setReservado("          ");

		subTramaConsulta.setNumDNI("44075459");
		subTramaConsulta.setCaracVerificacion(" ");
		subTramaConsulta.setTipoDocumento(" ");
		subTramaConsulta.setFormatoFirma("1");
		//subTramaConsulta.setReservado("     ");
		subTramaConsulta.setReservado(ConstantesUtil.completarSpace("", 29));

		RENIEC_2_REQUEST_Type objSend = new RENIEC_2_REQUEST_Type();

		objSend.setCabecera(cabecera);
		objSend.setSubTramaConsulta(subTramaConsulta);
		BBVA_RENIEC_WSDLPortType aBBVA_RENIEC_WSDLPortType = lookupBBVA_RENIEC_WSDLPortType();
		try {
			aBBVA_RENIEC_WSDLPortType.operation2(objSend);
		} catch (RemoteException re) {
			re.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}
	 
	
	
	protected static BBVA_RENIEC_WSDLPortType lookupBBVA_RENIEC_WSDLPortType() {
		try {
			BBVA_RENIEC_INTERFACE_ServiceLocator locator=new BBVA_RENIEC_INTERFACE_ServiceLocator();
//			Service locator = (Service) BBVA_RENIEC_INTERFACE_ServiceLocator.getServiceLookup(
//					STATIC_BBVA_RENIEC_WSDLPortType_REF_NAME,
//					STATIC_BBVA_RENIEC_WSDLPortType_CLASS);
			BBVA_RENIEC_WSDLPortType aBBVA_RENIEC_WSDLPortType = (BBVA_RENIEC_WSDLPortType) locator
					.getPort(STATIC_BBVA_RENIEC_WSDLPortType_CLASS);
			return aBBVA_RENIEC_WSDLPortType;
		} catch (ServiceException re) {
			re.printStackTrace();
			return null;
		}
	}
}
